The present invention relates to a computer system, and more particularly, to managing memory in a computer system.
Computer systems commonly use a virtual memory management system. Virtual memory management systems use dynamic memory allocation processes and garbage collection processes to respectively allocate and reclaim memory allocations. The garbage collection process is arranged to identify allocated but unusable memory allocations, clear the associated memory objects they store and return the identified memory allocations for reuse by reallocation.
The garbage collection process requires significant processing power and may delay other processing by the computer. The memory efficiency of application programs can be improved so that fewer discarded memory objects are produced for the garbage collection process to clear. However, with multiple system or application programs running on a given computer, identifying the source of discarded memory objects is difficult and time consuming.